import pandas as pd
import matplotlib.pyplot as plt
from qtawesome.iconic_font import text_color

plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
plt.rcParams['axes.unicode_minus'] = False

# 导入数据与数据处理
data = pd.read_excel('第二章 图表(前15).xlsx',sheet_name='13 对比折线图',usecols='B:D',skiprows=1)
x = data['月份']
y = data['2021年']
z = data['2022年']

# 创建图形和坐标轴
fig, ax = plt.subplots(figsize=(10, 6))

# 设置背景颜色
fig.patch.set_facecolor('#00002d')
ax.set_facecolor('#00002d')

# 设置X轴标签
ax.set_xticklabels(data['月份'], color='w')

# 设置Y轴标签颜色为白色
ax.set_ylim(0, 3000)
ax.set_yticklabels(ax.get_yticks(), color='w')

# 添加网格线
ax.grid(True, axis='y' ,linestyle='--', linewidth=0.5, color='w')

# 隐藏边框
for spine in ax.spines.values():
    spine.set_visible(False)

# 调整图形位置
plt.subplots_adjust(top=0.8)  # 留出空间给标题

# 添加标题
plt.text(0, 1.15, '2022年上半年各月同比去年销量', color='w', fontsize=24, transform=ax.transAxes)
plt.text(0, 1.05, '上半年同比去年增长明显，5月份同比增长最多，增长近40%', color='w', fontsize=16, transform=ax.transAxes)

# 绘制图
plt.plot(x, y,'o-', color='tomato', linewidth=2, markeredgecolor='#00002d', label='2021年')
plt.plot(x, z,'o-', color='dodgerblue', linewidth=2, markeredgecolor='#00002d', label='2022年')
ax.legend(facecolor='#00002d', labelcolor='w')

# 添加每个点的数值
for i in range(len(x)):
    plt.text(x[i], y[i] + 30, f'{int(y[i])}', color='w', fontsize=12, ha='center')
    plt.text(x[i], z[i] + 30, f'{int(z[i])}', color='w', fontsize=12, ha='center')

# 导出图片
#plt.savefig('D:/python charm/01/可视化/第二章/图片/对比折线图.png', dpi=300, bbox_inches='tight', facecolor='#00002d')
plt.show()